Packet communications have evolved to a point where voice sessions, or calls, can be supported with essentially the same quality of service as that provided by circuit-switched communications. Packet communications are generally supported over packet subsystems, which were initially supported by local area networks, but are now supported by wireless local area networks (WLANs). Using WLAN access, user elements can support voice sessions using packet communications while moving throughout the WLAN. As such, WLAN access provides users the same freedom of movement within a WLAN as cellular access provides users within a cellular environment.
In many instances, the coverage areas provided by WLANs and cellular networks are complementary. For example, a WLAN may be established within a building complex in which cellular coverage is limited. Given the localized nature of WLAN coverage, cellular networks could bridge the coverage gaps between WLANs. Unfortunately, WLAN access technology is independent of cellular access technology. Cellular networks generally support circuit-switched communications, and WLANs support packet communications.
For various reasons, a user who is engaged in a call using a first user element would benefit from being able to easily transfer the call to a second user element, which is supported by the same or different access network. For example, a user engaged in a cellular call may wish to transition an active call from a cellular terminal to office, home, or other cellular terminals due to coverage issues or a dying battery. Since these terminals are often supported by different types of networks, such as cellular networks and WLANs, or networks that do not internally support the transfer of active calls, the user is generally faced with initiating a new call to change from one user terminal to another.
For networks that do support transfers from one user terminal to another, the call is parked and then picked up by the new user terminal. Such functionality is generally relegated within a dedicated enterprise network controlled by a private branch exchange. As such, calls cannot be transferred to another network that is outside of the enterprise network. The park and pickup process for transferring calls from one user terminal to another is cumbersome and injects a significant interruption in the conversation. In operation, the transferring user must place the call on hold, dial the number for the new user element to which the call is being transferred, and then wait for the new user terminal to ring before answering the call.
Accordingly, there is a need for a technique to effectively transfer calls from one user element to another. There is a further need to be able to transfer calls from a user element in a first domain to a user element in a second domain, as well as transfer calls between user elements in an efficient manner within a given domain.